6 research outputs found

    In search of practitioner perspectives on ‘good code’

    Get PDF
    Much of a software developer's job involves working with existing code. The comprehensibility of code therefore has a significant and ongoing effect which can continue long after it was written. Personal experience has shown that some programmers' code is frustrating and time consuming to work with, while others write code that is crystal clear. This paper sets out the basis for a definition of 'good programmer' which emphasises the powerful but invisible productivity consequences for others, rather than the more readily measurable performance of the individual. The conjectured role of personality in shaping such characteristics is also discussed

    Helping programmers get what they want

    Get PDF
    Notions of "good practice" exist for many aspects of a programmer’s work. They are intended to bring benefits on a variety of dimensions from the most concrete and measurable, such as program speed, to more subjective characteristics such as readability. This research addresses programmer practices good or bad in any part of their professional work but considers them from the perspective of a single outcome: impact on the productivity of fellow programmers. The findings are now being applied in an experimental new framework for professional development

    Helping developers to help each other: a technique to facilitate understanding among professional software developers.

    Get PDF
    Much of a professional software developer’s work involves amending or extending pre-existing software; creating new software from scratch represents only a small proportion of their time. Even in a brand new project they still need to make sense of work others have done in the emerging software system. This research addresses how developers are helped or hindered in their own daily tasks by the actions of their peers. The literature commonly focuses on a specific aspect of the work such as code comprehension or the processes by which a project is run. This research instead takes a holistic view that considers all the activities involved in the job, but from a single uniting perspective: rather than conventional measures such as coding errors or delivery timescales, the criterion here is how a developer personally experiences their own productivity to be affected by their peers. The research used one-to-one interviews to identify common behaviours that help or hinder fellow software developers. Experienced software developers discussed team- friendly (and otherwise) behaviours across the breadth of their typical workplace tasks. The key themes to emerge from this qualitative data make a contribution to the understanding of software development by giving a comprehensive, developer’s- eye view of behaviours that help or hinder them across the whole range of tasks that fill their days. These themes laid the foundation for a practical application of the research. Techniques which had proved engaging and useful in the interviews were adapted into a continuing professional development workshop designed to encourage team discussion on issues of local resonance, selected by participants from those which the interviews had shown to be important. The topics resonated in a way which reinforces the validity of the interview findings. Participants enthusiastically identified useful actions for their own teams and would recommend the workshop to others. They also saw potential for future development into different workplace scenarios. The workshop is just one application of the understanding contributed by the research. The principles of good practice from the human perspective that have been identified also offer an empirical foundation that could be of practical use in appraisals, recruitment and any other scenario which requires an understanding of software developers not just as computer programmers but as people

    Assessing User Perceptions of Trust and Security in Manipulated Versions of Low Trust and High Trust Tourism Websites

    Get PDF
    The aim of this study was to investigate how perceptions of security and trust are involved in user evaluations of tourism websites and whether manipulations to heighten or lessen trust features could predict trust perceptions. Seven websites were manipulated to produce low and high trust versions, with the original used as a control version. Four trust manipulations were used based on the literature: level of currency, credibility, craftsmanship and trust logos. Fifty-six participants viewed one version of each website for 6 seconds and submitted an immediate rating of trust for each site. Following this, an 11-item self-report measure was completed for each website, to collect more considered perceptions of trust, appeal, security and usability. Self-perception measures of trust disposition and concern for information privacy were also collected. The analyses showed that the presence or absence of trust features reliably led to higher and lower perceptions of trust respectively. Also, those scoring higher on trust disposition gave higher trust ratings. We conclude that websites can be reliably designed to engender more or less perceived trust, however individual differences need to be considered. This preliminary research is limited by studying just four factors and further research is needed to manipulate other website features

    Blended Feedback II: Video feedback for individual students is the norm, on an undergraduate computer programming unit

    Get PDF
    The use of video feedback is popular, even usual, in fields involving social behaviour and interaction or physical performance. In other academic subject areas, the use of video as feedback is, as yet, uncommon. The work of others in this field covers group work, generic feedback, small numbers of students, samples and trials. We believe this may be one of the first studies on returning individual personalised feedback to a sizeable number of first year undergraduate students taking Computer Programming, or any other academic subject, for every assessment submitted on the unit. Student engagement with feedback is often lacking and in that case, a valuable learning opportunity is missed. Previous work using audio as feedback showed 80% of students would prefer audio to written feedback. However, the separation of submitted programming code from audio comments still limits ease of reference to the work. The next natural step was to use video screen capture to augment the student experience by improving easy reference to work by simultaneously providing contextually relevant narrative and visually referring to elements of the work

    Assessing user perceptions of trust and security in manipulated versions of low trust and high trust tourism websites

    No full text
    The aim of this study was to investigate how perceptions of security and trust are involved in user evaluations of tourism websites and whether manipulations to heighten or lessen trust features could predict trust perceptions. Seven websites were manipulated to produce low and high trust versions, with the original used as a control version. Four trust manipulations were used based on the literature: level of currency, credibility, craftsmanship and trust logos. Fifty-six participants viewed one version of each website for 6 seconds and submitted an immediate rating of trust for each site. Following this, an 11-item self-report measure was completed for each website, to collect more considered perceptions of trust, appeal, security and usability. Self-perception measures of trust disposition and concern for information privacy were also collected. The analyses showed that the presence or absence of trust features reliably led to higher and lower perceptions of trust respectively. Also, those scoring higher on trust disposition gave higher trust ratings. We conclude that websites can be reliably designed to engender more or less perceived trust, however individual differences need to be considered. This preliminary research is limited but studying just four factors and further research is needed to manipulate other website features.</p
    corecore